{
 "cells": [
  {
   "cell_type": "markdown",
   "source": [
    "Chapter 06\n",
    "# 混合两个一元高斯分布随机数\n",
    "Book_1《编程不难》 | 鸢尾花书：从加减乘除到机器学习"
   ],
   "metadata": {
    "collapsed": false
   }
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "outputs": [],
   "source": [
    "import random\n",
    "import statistics\n",
    "import matplotlib.pyplot as plt"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "start_time": "2024-07-02T22:05:19.168969Z",
     "end_time": "2024-07-02T22:05:19.633889Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "outputs": [],
   "source": [
    "random.seed(0)  # 方便复刻结果\n",
    "# 生成300个服从N(0, 1**2)的随机数\n",
    "mean1, std1, size1 = 0, 1, 300\n",
    "data1 = [random.gauss(mean1, std1) for _ in range(size1)]"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "start_time": "2024-07-02T22:05:30.547705Z",
     "end_time": "2024-07-02T22:05:30.580168Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "outputs": [],
   "source": [
    "# 生成700个服从N(10, 5**2)的随机数\n",
    "mean2, std2, size2 = 10, 5, 700\n",
    "data2 = [random.gauss(mean2, std2) for _ in range(size2)]"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "start_time": "2024-07-02T22:05:45.184205Z",
     "end_time": "2024-07-02T22:05:45.206484Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "outputs": [],
   "source": [
    "# 将两组随机数混合\n",
    "mixed_data = data1 + data2\n",
    "mean_loc = statistics.mean(mixed_data)\n",
    "std_loc = statistics.stdev(mixed_data)"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "start_time": "2024-07-02T22:06:15.239134Z",
     "end_time": "2024-07-02T22:06:15.264145Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAHHCAYAAABXx+fLAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAABf4UlEQVR4nO3deVwU5eMH8M+y7C6HHAnIoSioeKWJF4aZaKGYWpKmJKmA5JFiKomFeZEV5hWWpvX7foUsCbXM+uZJ5FFCmldlmSeCaSCSipy77M7vD2Jz5dqFhd1lP+/Xa1/uzjzPzDPPzurHmWdmRIIgCCAiIiIyIxaGbgARERFRU2MAIiIiIrPDAERERERmhwGIiIiIzA4DEBEREZkdBiAiIiIyOwxAREREZHYYgIiIiMjsMAARERGR2WEAIjIyXl5eCA8PN3Qzmr1Vq1ahffv2EIvF8PX11fvyDx06BJFIhEOHDul92bW5evUqRCIRkpKSmnS9RKaGAYioESUlJUEkEuHEiRPVzh88eDC6d+/e4PXs2bMHy5Yta/ByzMWBAwewYMECPPbYY0hMTMTbb79dY9nw8HCIRCLY29ujpKSkyvyLFy9CJBJBJBJh9erVjdlsvaoMaJUvmUwGV1dXDB48GG+//Tby8vLqvezff/8dy5Ytw9WrV/XXYCI9szR0A4hI0/nz52Fhodv/Tfbs2YMNGzYwBGnpu+++g4WFBf773/9CKpXWWd7S0hLFxcX43//+h/Hjx2vM27p1K6ysrFBaWqoxfdCgQSgpKdFq+Yb08ssvo1+/flAqlcjLy0N6ejqWLl2KtWvXYvv27XjiiSd0Xubvv/+OuLg4DB48GF5eXvpvNJEeMAARGRmZTGboJuisqKgItra2hm6G1m7evAlra2utw4lMJsNjjz2Gzz77rEoASk5OxsiRI/HFF19oTLewsICVlZXe2txYHn/8cTz33HMa037++WcMGzYMY8eOxe+//w53d3cDtY6o8fAUGJGReXAMkEKhQFxcHHx8fGBlZQUnJycMHDgQqampACpO0WzYsAEANE5pVCoqKsIrr7wCT09PyGQydO7cGatXr4YgCBrrLSkpwcsvvwxnZ2fY2dnhmWeewfXr1yESiTSOLC1btgwikQi///47QkND8dBDD2HgwIEAgF9++QXh4eFo3749rKys4ObmhilTpiA/P19jXZXLuHDhAiZOnAgHBwe4uLhg8eLFEAQB165dw+jRo2Fvbw83NzesWbNGq74rLy/H8uXL0aFDB8hkMnh5eWHhwoUoKytTlxGJREhMTERRUZG6r7QZLxMaGoq9e/fizp076mk//fQTLl68iNDQ0CrlHxwDdO7cOVhbW2Py5Mka5X744QeIxWK8+uqr6ml37tzB3Llz1d9Zx44d8c4770ClUmnUvXPnDsLDw+Hg4ABHR0eEhYVptK++evbsiYSEBNy5cwfr169XT8/KysLMmTPRuXNnWFtbw8nJCePGjdM41ZWUlIRx48YBAIYMGaLu48p++OqrrzBy5Eh4eHhAJpOhQ4cOWL58OZRKZYPbTaQLHgEiagJ3797FrVu3qkxXKBR11l22bBni4+Px4osvws/PDwUFBThx4gROnTqFoUOHYvr06bhx4wZSU1PxySefaNQVBAHPPPMMDh48iMjISPj6+mL//v2IiYnB9evX8e6776rLhoeHY/v27Zg0aRIeffRRHD58GCNHjqyxXePGjYOPjw/efvttdZhKTU3FlStXEBERATc3N/z222/46KOP8Ntvv+HHH3/UCGYAEBISgq5du2LFihXYvXs33nzzTbRs2RIffvghnnjiCbzzzjvYunUr5s+fj379+mHQoEG19tWLL76Ijz/+GM899xxeeeUVHDt2DPHx8Th37hy+/PJLAMAnn3yCjz76CMePH8d//vMfAMCAAQPq/B7GjBmDGTNmYOfOnZgyZQqAiqM/Xbp0Qe/eveus37VrVyxfvhwxMTF47rnn8Mwzz6CoqAjh4eHo0qUL3njjDQBAcXExAgICcP36dUyfPh1t27ZFeno6YmNj8ddffyEhIQFAxXc7evRo/PDDD5gxYwa6du2KL7/8EmFhYXW2RRvPPfccIiMjceDAAbz11lsAKgJfeno6nn/+ebRp0wZXr17Fxo0bMXjwYPz++++wsbHBoEGD8PLLL+O9997DwoUL0bVrV/X2AxUBqUWLFoiOjkaLFi3w3XffYcmSJSgoKMCqVav00nYirQhE1GgSExMFALW+Hn74YY067dq1E8LCwtSfe/bsKYwcObLW9cyaNUuo7ue8a9cuAYDw5ptvakx/7rnnBJFIJFy6dEkQBEE4efKkAECYO3euRrnw8HABgLB06VL1tKVLlwoAhAkTJlRZX3FxcZVpn332mQBAOHLkSJVlTJs2TT2tvLxcaNOmjSASiYQVK1aop9++fVuwtrbW6JPqnDlzRgAgvPjiixrT58+fLwAQvvvuO/W0sLAwwdbWttblVVf2ueeeE5588klBEARBqVQKbm5uQlxcnJCZmSkAEFatWqWud/DgQQGAcPDgQfU0pVIpDBw4UHB1dRVu3bolzJo1S7C0tBR++ukndZnly5cLtra2woULFzTa8dprrwlisVjIzs4WBOHf73blypXqMuXl5cLjjz8uABASExNr3a7K9u3YsaPGMj179hQeeugh9efqvt+MjAwBgLBlyxb1tB07dlTZ9tqWMX36dMHGxkYoLS2ttc1E+sRTYERNYMOGDUhNTa3yeuSRR+qs6+joiN9++w0XL17Ueb179uyBWCzGyy+/rDH9lVdegSAI2Lt3LwBg3759AICZM2dqlJs9e3aNy54xY0aVadbW1ur3paWluHXrFh599FEAwKlTp6qUf/HFF9XvxWIx+vbtC0EQEBkZqZ7u6OiIzp0748qVKzW2BajYVgCIjo7WmP7KK68AAHbv3l1rfW2Ehobi0KFDyMnJwXfffYecnJxqT3/VxMLCAklJSSgsLMRTTz2FDz74ALGxsejbt6+6zI4dO/D444/joYcewq1bt9SvwMBAKJVKHDlyBEDF9lpaWuKll15S1xWLxbV+Z7pq0aIF7t27p/58//erUCiQn5+Pjh07wtHRsdrvtzr3L+PevXu4desWHn/8cRQXF+OPP/7QW9uJ6sJTYERNwM/PT+MfuUqV/8jV5o033sDo0aPRqVMndO/eHcOHD8ekSZO0Ck9ZWVnw8PCAnZ2dxvTK0xFZWVnqPy0sLODt7a1RrmPHjjUu+8GyAPD3338jLi4OKSkpuHnzpsa8u3fvVinftm1bjc8ODg6wsrKCs7NzlekPjiN6UOU2PNhmNzc3ODo6qre1IUaMGAE7Ozts27YNZ86cQb9+/dCxY0edLvfu0KEDli1bhpiYGHTv3h2LFy/WmH/x4kX88ssvcHFxqbZ+Zb9mZWXB3d0dLVq00JjfuXNn3TaqFoWFhRr7TklJCeLj45GYmIjr169rjCOr7vutzm+//YZFixbhu+++Q0FBgcY8bZdBpA8MQERGbtCgQbh8+TK++uorHDhwAP/5z3/w7rvvYtOmTRpHUJra/f+TrzR+/Hikp6cjJiYGvr6+aNGiBVQqFYYPH15lAC9QccRCm2kAqgzarsmD44z0SSaTYcyYMfj4449x5cqVet924MCBAwCAGzduID8/H25ubup5KpUKQ4cOxYIFC6qt26lTp3qtU1cKhQIXLlzQuE/V7NmzkZiYiLlz58Lf3x8ODg4QiUR4/vnnq/1+H3Tnzh0EBATA3t4eb7zxBjp06AArKyucOnUKr776qlbLINIXBiAiE9CyZUtEREQgIiIChYWFGDRoEJYtW6YOQDX9o9+uXTt8++23uHfvnsb/5CtPNbRr1079p0qlQmZmJnx8fNTlLl26pHUbb9++jbS0NMTFxWHJkiXq6fU5dVcfldtw8eJF9REuAMjNzcWdO3fU29pQoaGh2Lx5MywsLPD888/rXH/Tpk1ITU3FW2+9hfj4eEyfPh1fffWVen6HDh1QWFiIwMDAWpfTrl07pKWlobCwUOMo0Pnz53VuU3U+//xzlJSUICgoSGNaWFiYxlV5paWlVa48q2l/PHToEPLz87Fz506NAe2ZmZl6aTORLjgGiMjIPXjqp0WLFujYsaPGpd2V9+B58B+iESNGQKlUalzKDADvvvsuRCIRnnrqKQBQ/yP3wQcfaJR7//33tW5n5ZGbB4/UVF611NhGjBhR7frWrl0LALVe0aaLIUOGYPny5Vi/fr3GkRttZGZmIiYmBmPHjsXChQuxevVqfP3119iyZYu6zPjx45GRkYH9+/dXqX/nzh2Ul5cDqNje8vJybNy4UT1fqVTq9J3V5Oeff8bcuXPx0EMPYdasWerpYrG4yvf7/vvvV7mEvab9sbp9RC6XV9nviJoCjwARGblu3bph8ODB6NOnD1q2bIkTJ07g888/R1RUlLpMnz59AFTc1TcoKAhisRjPP/88nn76aQwZMgSvv/46rl69ip49e+LAgQP46quvMHfuXHTo0EFdf+zYsUhISEB+fr76MvgLFy4A0O60kr29PQYNGoSVK1dCoVCgdevWOHDgQJP9775nz54ICwvDRx99pD7Vcvz4cXz88ccIDg7GkCFD9LIeCwsLLFq0SOd6giBgypQpsLa2VoeW6dOn44svvsCcOXMQGBgIDw8PxMTE4Ouvv8aoUaMQHh6OPn36oKioCL/++is+//xzXL16Fc7Oznj66afx2GOP4bXXXsPVq1fRrVs37Ny5U+dxNN9//z1KS0uhVCqRn5+Po0eP4uuvv4aDgwO+/PJLjZA3atQofPLJJ3BwcEC3bt2QkZGBb7/9Fk5OThrL9PX1hVgsxjvvvIO7d+9CJpPhiSeewIABA/DQQw8hLCwML7/8MkQiET755BOtT28S6ZXBrj8jMgOVl8Hff5nz/QICAuq8DP7NN98U/Pz8BEdHR8Ha2lro0qWL8NZbbwlyuVxdpry8XJg9e7bg4uIiiEQijUvi7927J8ybN0/w8PAQJBKJ4OPjI6xatUpQqVQa6y0qKhJmzZoltGzZUmjRooUQHBwsnD9/XgCgcVl65SXseXl5Vbbnzz//FJ599lnB0dFRcHBwEMaNGyfcuHGjxkvpH1xGTZenV9dP1VEoFEJcXJzg7e0tSCQSwdPTU4iNja1yeXV9L4OviTaXwa9bt04AIHzxxRcadbOzswV7e3thxIgR6mn37t0TYmNjhY4dOwpSqVRwdnYWBgwYIKxevVrje8/PzxcmTZok2NvbCw4ODsKkSZOE06dP63QZfOVLIpEILi4uwqBBg4S33npLuHnzZpU6t2/fFiIiIgRnZ2ehRYsWQlBQkPDHH39U2WcFQRD+7//+T2jfvr0gFos1+uHo0aPCo48+KlhbWwseHh7CggULhP3799d42TxRYxEJAqM3EVXvzJkz6NWrFz799FO88MILhm4OEZHecAwQEQFAtU86T0hIgIWFRZ13YCYiMjUcA0REAICVK1fi5MmTGDJkCCwtLbF3717s3bsX06ZNg6enp6GbR0SkVzwFRkQAKp7jFRcXh99//x2FhYVo27YtJk2ahNdffx2Wlvy/EhE1LwxAREREZHY4BoiIiIjMDgMQERERmR2e2K+GSqXCjRs3YGdn16jPFSIiIiL9EQQB9+7dg4eHBywsaj/GwwBUjRs3bvCqFyIiIhN17do1tGnTptYyDEDVqHxo5LVr12Bvb2/g1hgXhUKBAwcOYNiwYZBIJNpXVCqBjJ8r3vv3BGp44rc5qXdfNoaiIsDDo+L9jRvAP89yMiVG1Z/6ZIDfTrPtSwNhf+pPXX1ZUFAAT09PjYc/14QBqBqVp73s7e0ZgB6gUChgY2MDe3t73QOQ7T9PrLa3ZwBCA/qyMdz/fdjbm2wAMpr+1CcD/HaabV8aCPtTf7TtS22Grxh8EPSGDRvg5eUFKysr9O/fH8ePH6+x7G+//YaxY8fCy8sLIpGo2qdMx8fHo1+/frCzs0OrVq0QHByM8+fPN+IWEBERkakxaADatm0boqOjsXTpUpw6dQo9e/ZEUFAQbt68WW354uJitG/fHitWrNB4QvH9Dh8+jFmzZuHHH39EamoqFAoFhg0bhqKiosbcFCIiIjIhBj0FtnbtWkydOhUREREAgE2bNmH37t3YvHkzXnvttSrl+/Xrh379+gFAtfMBYN++fRqfk5KS0KpVK5w8eZLPMyIiIiIABgxAcrkcJ0+eRGxsrHqahYUFAgMDkZGRobf13L17FwDQsmXLGsuUlZWhrKxM/bmgoABAxblGhUKht7Y0B5X9oXO/KJWoPFurUCgAlUq/DTNB9e7LxqBQaH4/xtAmHRlVf+qTAX47ptCXSqUS5eXlMIWHGZSXl8PS0hKFhYV8rEwDiEQi9fdd076pyz5rsG/i1q1bUCqVcHV11Zju6uqKP/74Qy/rUKlUmDt3Lh577DF07969xnLx8fGIi4urMv3AgQOwsbHRS1uam9TUVJ3KiyHCKMeKq4z27z8AJYz/L62momtfNgZxaSlG/fN+//79UFpZGbQ9DWEM/alPhvztGGtf2tnZwc7Ors77vBgTNzc3XLlyxdDNMHkqlQp2dnY17pvFxcVaL6tZR9FZs2bh7Nmz+OGHH2otFxsbi+joaPXnysvohg0bxqvAHqBQKJCamoqhQ4fqfhXYsbMAgKCgYbwKDA3oy8Zw3xi5oKAgk70KzGj6U58M8Nsx5r7Mzc1FQUEBXFxcYGNjYxI3qxUEAUVFRbC1tTWJ9horQRBQXFyMP//8Ex07doS7u3uVMpVncLRhsADk7OwMsViM3Nxcjem5ubk1DnDWRVRUFL755hscOXKkzpshyWQyyGSyKtMlEonR/fiNhc59c9//1CQSCQPQfYxiP7tv/RKJROOzqTGK/tQnA/52jK0vlUol7t27B1dXVzg5ORm6OVpTqVRQKBSwtrY2qaNWxsja2hqlpaW4d+8eLCwsIH7g96DL/mqwb0IqlaJPnz5IS0tTT1OpVEhLS4O/v3+9lysIAqKiovDll1/iu+++g7e3tz6aS0REBlY5voNDE8ybVCoF0PAxagY9BRYdHY2wsDD07dsXfn5+SEhIQFFRkfqqsMmTJ6N169aIj48HUDFw+vfff1e/v379Os6cOYMWLVqgY8eOACpOeyUnJ+Orr76CnZ0dcnJyAAAODg6wtrY2wFYSEZE+8TSSedPX92/QABQSEoK8vDwsWbIEOTk58PX1xb59+9QDo7OzszUOF964cQO9evVSf169ejVWr16NgIAAHDp0CACwceNGAMDgwYM11pWYmIjw8PBG3R4iIiIyDQYfBB0VFYWoqKhq51WGmkpeXl51XvJoCpdEEhGRfuXl5ek0ALah7O3t4eLi0mjLHzx4MHx9fat94oG+LFu2DLt27cKZM2e0rnPo0CEMGTIEt2/fhqOjY6O1rSkYPAARERE1RF5eHkJDX0J+flndhfXEyUmG5OSNWoegmTNn4rPPPsP06dOxadMmjXmzZs3CBx98gLCwMCQlJQEAdu7caVQD0BuiKcJcfTAAERGRSSsoKEB+fhlksldgbe3Z6OsrKbmG/Pw16svxteXp6YmUlBS8++676jGppaWlSE5ORtu2bTXK1nbzXtIPXo9HRETNgrW1J2xtOzT6q74hq1evXvD09MTOnTvV03bu3Im2bdtqjG8FKo6azJ07FwDwxx9/wMbGBsnJyer527dvh7W1tfrCoDt37uDFF1+Ei4sL7O3t8cQTT+Dnn3/WWOaKFSvg6uoKOzs7REZGorS0tM4279mzB506dYK1tTWGDBmCq1evaszPz8/HhAkT0Lp1a9jY2KBHjx747LPP1PPDw8Nx+PBhrFu3DiKRCCKRCFevXoVSqURkZCS8vb1hbW2Nzp07Y926dVr1o77wCJAZacg58sY+301EZA6mTJmCxMREvPDCCwCAzZs3IyIiosqY1/t16dIFq1evxsyZMzFw4EBYWFhgxowZeOedd9CtWzcAwLhx42BtbY29e/fCwcEBH374IZ588klcuHABLVu2xPbt27Fs2TJs2LABAwcOxCeffIL33nsP7du3r3G9165dw5gxYzBr1ixMmzYNJ06cwCuvvKJRprS0FH369MGrr74Ke3t77N69G5MmTUKHDh3g5+eHdevW4cKFC+jevTveeOMNAICLiwtUKhXatGmDHTt2wMnJCenp6Zg2bRrc3d0xfvz4BvaydhiAzERDz5FXnu829UFvRESGNHHiRMTGxiIrKwsAcPToUaSkpNQagICKMUR79uzBxIkTIZVK0a9fP8yePRsA8MMPP+D48eO4efOm+qa+q1evxq5du/D5559j2rRpSEhIQGRkJCIjIwEAb775Jr799ttajwJt3LgRHTp0wJo1awAAnTt3xq+//op33nlHXaZ169aYP3+++vPs2bOxf/9+bN++HX5+fnBwcIBUKoWNjY3GTY7FYrHGI6i8vb2RkZGB7du3MwCRfjXkHPn957sZgIiI6s/FxQUjR45EUlISBEHAyJEj4ezsrFXdzZs3o1OnTrCwsMBvv/2mvh/Ozz//jMLCwip3xy4pKcHly5cBAOfOncOMGTM05vv7++PgwYM1ru/cuXPo379/lTr3UyqVePvtt7F9+3Zcv34dcrkcZWVlWt2scsOGDdi8eTOys7NRUlICuVwOX1/fOuvpCwOQmak8R66rsqa7uIKIqFmbMmWK+vYvGzZs0Lrezz//jKKiIlhYWOCvv/5SPwursLAQ7u7u1R5Fauz/tK5atQrr1q1DQkICevToAVtbW8ydOxdyubzWeikpKZg/fz7WrFkDf39/2NnZYdWqVTh27Fijtvd+DEBERERNaPjw4ZDL5RCJRBUPH9bC33//jfDwcLz++uv466+/8MILL+DUqVOwtrZG7969kZOTA0tLS3h5eVVbv2vXrjh27BgmT56snvbjjz/Wus6uXbvi66+/1pj2YJ2jR49i9OjRmDhxIoCKR1pduHBBPTYJqHh0hVKprFJvwIABmDlzpnpa5dGqpsKrwIiIiJqQWCzGuXPn8Pvvv1d5mGdNZsyYAU9PTyxatAhr166FUqlUj70JDAyEv78/goODceDAAVy9ehXp6el4/fXXceLECQDAnDlzsHnzZiQmJuLChQtYunQpfvvttzrXefHiRcTExOD8+fNITk5W36eoko+PD1JTU5Geno5z585h+vTpVR5y7uXlhWPHjuHq1au4desWVCoVfHx8cOLECezfvx8XLlzA4sWL8dNPP2nZg/rBI0BERNQslJRcM5n12Nvba112y5Yt2LNnD06fPg1LS0tYWlri008/xcCBAzFq1Cg89dRT2LNnD15//XVEREQgLy8Pbm5uGDRokPrRUiEhIbh8+TIWLFiA0tJSjB07Fi+99BL2799f43rbtm2LL774AvPmzcP7778PPz8/vP3225gyZYq6zKJFi3DlyhUEBQXBxsYG06ZNQ3BwMO7evasuM3/+fISFhaFbt24oKSlBZmYmpk+fjtOnTyMkJAQikQgTJkzAzJkzsXfv3nr0Zv2IBD47ooqCggI4ODjg7t27Ou2kxuzy5csYN24uHB0TdB4DVFR0GXfuzMWOHQlo27Yt9uzZgxEjRuh2l1KlEvjhdMX7gb0ALf/X05wpFIr69WVjKCoCWrSoeF9YCNjaGrY99WBU/alPBvjtGGtflpaWIjMzE97e3rCyslJPN/Y7QatUKhQUFMDe3l7j+ZakO5VKhVu3buHWrVto3769xn4A6PbvN48AERGRSXNxcUFy8sZm9SwwanwMQEREZPJcXFwYSEgnDECkFYWiDFlZWeqR/JmZmVoP3rO3t4cLn2tDRERGhAGI6iSX5yMr6wpmz14BO7sWiI0Nw+TJr0EuV2hV38lJhuRPN4D/NyMiImPBAER1UioLUV4uhVQ6D46OHQCcg6PjCsjldR8BqryL9L2CewxARERkNBiASGtWVm1gY+MN4BxsbLy1vjqEd5EmIiJjw+vxiIiIyOwwABEREZHZYQAiIiIis8MARERERGaHAYiIiKiRzZw5E2KxGDNmzKgyb9asWRCJRAgPD2/6hpkxBiAiIqIm4OnpiZSUFJSUlKinlZaWIjk5GW3btjVgy8wTAxAREVET6NWrFzw9PbFz5071tJ07d6Jt27bo1auXeppKpUJ8fDy8vb1hbW2Nnj174vPPP1fPVyqViIyMVM/v3Lkz1q1bp7Gu8PBwBAcHY/Xq1XB3d4eTkxNmzZoFhUK7G9iaA94HiIiITJcgAMXFhlm3jQ0gEulUZcqUKUhMTMQLL7wAANi8eTMiIiJw6NAhdZn4+Hh8+umn2LRpE3x8fHDkyBFMnDgRLi4uCAgIgEqlQps2bbBjxw44OTkhPT0d06ZNg7u7O8aPH69ezsGDB+Hu7o6DBw/i0qVLCAkJga+vL6ZOnaqXzTd1DEBERGS6iouBFi0Ms+7CQsDWVqcqEydORGxsLLKysgAAR48eRUpKijoAlZWV4e2338a3334Lf39/AED79u3xww8/4MMPP0RAQAAkEgni4uLUy/T29kZGRga2b9+uEYAeeughrF+/HmKxGF26dMHIkSORlpbGAPQPBiAiIqIm4uLigpEjRyIpKQmCIGDkyJFwdnZWz7906RKKi4sxdOhQjXpyuVzjNNmGDRuwefNmZGdno6SkBHK5HL6+vhp1Hn74YY2HVru7u+PXX39tnA0zQQxARERkumxsKo7EGGrd9TBlyhRERUUBqAgy9yv8Z1t2796N1q1ba8yTyWQAgJSUFMyfPx9r1qyBv78/7OzssGrVKhw7dkyj/IOPKxKJRFCpVPVqc3PEAERERKZLJNL5NJShDR8+HHK5HCKRCEFBQRrzunXrBplMhuzsbAQEBFRb/+jRoxgwYABmzpypnnb58uVGbXNzxABERETUhMRiMc6dO6d+fz87OzvMnz8f8+bNg0qlwsCBA3H37l0cPXoU9vb2CAsLg4+PD7Zs2YL9+/fD29sbn3zyCX766Sd4e3sbYnNMFgMQERFRE7O3t69x3vLly+Hi4oL4+HhcuXIFjo6O6N27NxYuXAgAmD59Ok6fPo2QkBCIRCJMmDABM2fOxN69e5uq+c0CAxAREVEj++CDD2oNPbt27VK/F4lEmDNnDubMmVNtWZlMhsTERCQmJmpMj4+PV79PSkqqUi8hIUGnNjd3vBEiERERmR0GICIiIjI7DEBERERkdhiAiIiIyOwwABEREZHZYQAiIiIis8MARERERGaHAYiIiIjMDgMQERERmR0GICIiIjIqXl5ejX7nagYgIiKiRjZz5kyIxWLMmDGjyrxZs2ZBJBIhPDy86RvWhJKSkuDo6GjoZqgxABERETUBT09PpKSkoKSkRD2ttLQUycnJaNu2rQFbVrNly5Y122DGAERERNQEevXqBU9PT+zcuVM9befOnWjbti169eqlUValUiE+Ph7e3t6wtrZGz5498fnnn6vnK5VKREZGqud37twZ69at01hGeHg4goODsXr1ari7u8PJyQmzZs2CQqFotG38+eefMWTIENjZ2cHe3h59+vTBiRMncOjQIURERODu3bsQiUQQiURYtmwZAODmzZt4+umnYW1tDW9vb2zdurXR2nc/Pg2eiIhMlyAAKpVh1m1hAYhEOlWZMmUKEhMT8cILLwAANm/ejIiICBw6dEijXHx8PD799FNs2rQJPj4+OHLkCCZOnAgXFxcEBARApVKhTZs22LFjB5ycnJCeno5p06bB3d0d48ePVy/n4MGDcHd3x8GDB3Hp0iWEhITA19cXU6dObfDmV+eFF15Ar169sHHjRojFYpw5cwYSiQQDBgxAQkIClixZgvPnzwMAWrRoAaAiqN24cQMHDx6ERCLByy+/jJs3bzZK++7HAERERKZLpQJ+OG2YdQ/sBYjFOlWZOHEiYmNjkZWVBQA4evQoUlJSNAJQWVkZ3n77bXz77bfw9/cHALRv3x4//PADPvzwQwQEBEAikSAuLk5dx9vbGxkZGdi+fbtGAHrooYewfv16iMVidOnSBSNHjkRaWlqNAej777/HU089pf4sl8shCILG0acPP/xQHeAelJ2djZiYGHTp0gUA4OPjo57n4OAAkUgENzc39bQLFy5g7969OH78OPr16wcA+O9//4uuXbvW3pF6wABERETURFxcXDBy5EgkJSVBEASMHDkSzs7OGmUuXbqE4uJiDB06VGO6XC7XOFW2YcMGbN68GdnZ2SgpKYFcLoevr69GnYcffhji+0Kau7s7fv311xrb17dvX5w5c0b9+b333sP169fxzjvvqKe5urrWWD86OhovvvgiPvnkEwQGBmLcuHHo0KFDjeXPnTsHS0tL9OnTRz2tS5cuTTJYmgGIiIhMl4VFxZEYQ627HqZMmYKoqCgAFSHmQYWFhQCA3bt3o3Xr1hrzZDIZACAlJQXz58/HmjVr4O/vDzs7O6xatQrHjh3TKC+RSDQ+i0QiqGo5ZWhtbY2OHTuqP7ds2RIFBQUa02qzbNkyhIaGYvfu3di7dy+WLl2KlJQUPPvss1rVb0oGHwS9YcMGeHl5wcrKCv3798fx48drLPvbb79h7Nix8PLygkgkqvEeAbosk4iITJhIVHEayhAvHcf/VBo+fDjkcjkUCgWCgoKqzO/WrRtkMhmys7PRsWNHjZenpyeAilNnAwYMwMyZM9GrVy907NgRly9fblBX6kunTp0wb948HDhwAGPGjEFiYiIAQCqVQqlUapTt0qULysvLcfLkSfW08+fP486dO43eToMeAdq2bRuio6OxadMm9O/fHwkJCQgKCsL58+fRqlWrKuWLi4vRvn17jBs3DvPmzdPLMomIiJqSWCzGuXPn1O8fZGdnh/nz52PevHlQqVQYOHAg7t69i6NHj8Le3h5hYWHw8fHBli1bsH//fnh7e+OTTz7BTz/9BG9v7wa1TS6X4++//1Z/rrxvUU5Ojnqag4MDrK2tq9QtKSlBTEwMnnvuOXh7e+PPP//ETz/9hLFjxwKouLlhYWEh0tLS0LNnT9jY2KBz584YPnw4pk+fjo0bN8LS0hJz586tdvn6ZtAjQGvXrsXUqVMRERGBbt26YdOmTbCxscHmzZurLd+vXz+sWrUKzz//vPowYEOXSURE1NTs7e1hb29f4/zly5dj8eLFiI+PR9euXTF8+HDs3r1bHXCmT5+OMWPGICQkBP3790d+fj5mzpzZ4Halp6fD3d291te2bduqrSsWi5Gfn4/JkyejU6dOGD9+PJ566in1YO0BAwZgxowZCAkJgYuLC1auXAkASExMhIeHBwICAjBmzBhMmzatSQ5YGOwIkFwux8mTJxEbG6ueZmFhgcDAQGRkZBjNMomIiBrqgw8+qDXw7Nq1S+OzSCTCnDlzMGfOnGrLy2QyJCYmqk8vVYqPj1e/T0pKqlKvrsdLDB48GIIg1FqmJlKpFJ999lmtZTZu3IiNGzdqTHNzc8M333yjMW3SpEn1aoMuDBaAbt26BaVSWWU0uaurK/74448mXWZZWRnKysrUnwsKCgAACoWiUW8Y1ZSUSiWkUgmkUiUkEt22SSoVYG0tg1SqUtfVdhlSacV67z/vq1AoDHffDiNSuW8ZxT6mUECifqsAjKFNOjKq/tQnpVLzu2mC346x9qVCoYAgCFCpVLUO5DU2lYGisu1Uf/f3pUKhqHIKUZd9lleBoSIx338/hUoHDhyAjY2NAVrUOGJjwwCc++elq2UArv7zAkJDU3WoG4bz58/Dx9EDALB//wEoUb//YTRHqam69GXjEJeWYtQ/7/fv3w+llZVB29MQxtCf+iSGCKMM9Nsxtr60tLSEm5sbCgsLIZfLDd0cnd27d8/QTWg2SktLceTIEZSXl2tMLy4u1noZBgtAzs7OEIvFyM3N1Ziem5urcZOkplhmbGwsoqOj1Z8LCgrg6emJYcOG1XrI0pRkZmZi8uTX4Oi4AjY2ug2Sy88/grNn56N79yS4ufkgNDQVyclDoVBI6qxbXJyJO3dewydJ8UBuxY8/KGiYzjcPa44UCgVSU1MxdOjQKpeqNrmiIvXboKAgwNbWgI2pH6PqT31SKoFjZwE03W/HWPuytLQU165dQ4sWLWBlQiFdEATcu3cPdnZ2ENXzyjGqIAgC8vPzYWVlhUGDBlXZDyrP4GjDYAFIKpWiT58+SEtLQ3BwMICKZ5+kpaWp74/QVMuUyWTVDqqWSCRG9eNvCLFYDLlcAblcrPM2yeUilJSUQS63UIcehUKiVQCSyyvWe/9hSolEwgB0H6PYz+5bv0Qi0fhsaoyiP/XpvnvNNPVvx9j6UqlUQiQSwcLCAhb1vAePIVSe9qpsO9Xf/X1Z3f6py/5q0FNg0dHRCAsLQ9++feHn54eEhAQUFRUhIiICADB58mS0bt1aPahLLpfj999/V7+/fv06zpw5gxYtWqhv0lTXMomIyLTVd5AuNQ/6+v4NGoBCQkKQl5eHJUuWICcnB76+vti3b596EHN2drZGWr5x44bGbcBXr16N1atXIyAgQP0clbqWSUREpqnyf/fFxcVNcp8YMk6V478aenTS4IOgo6Kiajw99eDTcb28vLRKfrUtk4iITJNYLIajo6P6SeE2NjYmMaZGpVJBLpejtLSUp8AaQBAEFBYW4tatW3Bxcan2JpK6MHgAIiIi0lblBS2VIcgUCIKAkpISWFtbm0RgM2aCIOD27dt4+OGHG7wsBiAiIjIZIpEI7u7uaNWqldHdp6gmCoUCR44cwaBBg4xqULmpunjxol6CJAMQERGZHLFY3OBTIE1FLBajvLwcVlZWDEANpM/Qy5ORREREZHYYgIiIiMjsMAARERGR2WEAIiIiIrPDAERERERmhwGIiIiIzA4DEBEREZkdBiAiIiIyOwxAREREZHYYgIiIiMjsMAARERGR2WEAIiIiIrPDAERERERmhwGIiIiIzA4DEBEREZkdBiAiIiIyOwxAREREZHYYgIiIiMjsMAARERGR2WEAIiIiIrPDAERERERmhwGIiIiIzA4DEBEREZkdBiAiIiIyOwxAREREZHYYgIiIiMjsMAARERGR2WEAIiIiIrPDAERERERmhwGIiIiIzA4DEBEREZkdBiAiIiIyOwxAREREZHYYgIiIiMjsMAARERGR2WEAIiIiIrPDAERERERmhwGIiIiIzA4DEBEREZkdBiAiIiIyOwxAREREZHYYgIiIiMjsMAARERGR2WEAIiIiIrPDAERERERmhwGIiIiIzA4DEBEREZkdgwegDRs2wMvLC1ZWVujfvz+OHz9ea/kdO3agS5cusLKyQo8ePbBnzx6N+YWFhYiKikKbNm1gbW2Nbt26YdOmTY25CURERGRiDBqAtm3bhujoaCxduhSnTp1Cz549ERQUhJs3b1ZbPj09HRMmTEBkZCROnz6N4OBgBAcH4+zZs+oy0dHR2LdvHz799FOcO3cOc+fORVRUFL7++uum2iwiIiIycgYNQGvXrsXUqVMRERGhPlJjY2ODzZs3V1t+3bp1GD58OGJiYtC1a1csX74cvXv3xvr169Vl0tPTERYWhsGDB8PLywvTpk1Dz5496zyyRERERObD0lArlsvlOHnyJGJjY9XTLCwsEBgYiIyMjGrrZGRkIDo6WmNaUFAQdu3apf48YMAAfP3115gyZQo8PDxw6NAhXLhwAe+++26NbSkrK0NZWZn6c0FBAQBAoVBAoVDUZ/OMjlKphFQqgVSqhESi2zZJpQKsrWWQSlXqutouQyqtWK9SqVRPUygUgEqlUxuao8p9yyj2MYUCEvVbBWAMbdKRUfWnPimVmt9NE/x2mm1fGgj7U3/q6ktd+thgAejWrVtQKpVwdXXVmO7q6oo//vij2jo5OTnVls/JyVF/fv/99zFt2jS0adMGlpaWsLCwwP/93/9h0KBBNbYlPj4ecXFxVaYfOHAANjY2umyWUYuNDQNw7p+XrpYBuPrPCwgNTdWhbhjOnz8PH0cPAMD+/QeghFCPNjRPqam69GXjEJeWYtQ/7/fv3w+llZVB29MQxtCf+iSGCKMM9Ntpbn1paOxP/ampL4uLi7VehsECUGN5//338eOPP+Lrr79Gu3btcOTIEcyaNQseHh4IDAystk5sbKzGkaWCggJ4enpi2LBhsLe3b6qmN6rMzExMnvwaHB1XwMbGW6e6+flHcPbsfHTvngQ3Nx+EhqYiOXkoFApJnXWLizNx585r+CQpHsi9BwAIChoGiMX12o7mRKFQIDU1FUOHDoVEUndfNqqiIvXboKAgwNbWgI2pH6PqT31SKoFjFeMcm+q302z70kDYn/pTV19WnsHRhsECkLOzM8RiMXJzczWm5+bmws3Nrdo6bm5utZYvKSnBwoUL8eWXX2LkyJEAgEceeQRnzpzB6tWrawxAMpkMMpmsynSJRNJsdlaxWAy5XAG5XKzzNsnlIpSUlEEut1CHHoVColUAkssr1iu+7y9tiUTCAHQfo9jP7lu/RCLR+GxqjKI/9cni36GaTf3baXZ9aWDsT/2pqS916V+DDYKWSqXo06cP0tLS1NNUKhXS0tLg7+9fbR1/f3+N8kDFYbDK8pVjdiwsNDdLLBZDxTEnRERE9A+DngKLjo5GWFgY+vbtCz8/PyQkJKCoqAgREREAgMmTJ6N169aIj48HAMyZMwcBAQFYs2YNRo4ciZSUFJw4cQIfffQRAMDe3h4BAQGIiYmBtbU12rVrh8OHD2PLli1Yu3atwbaTiIiIjItBA1BISAjy8vKwZMkS5OTkwNfXF/v27VMPdM7OztY4mjNgwAAkJydj0aJFWLhwIXx8fLBr1y50795dXSYlJQWxsbF44YUX8Pfff6Ndu3Z46623MGPGjCbfPiIiIjJOBh8EHRUVhaioqGrnHTp0qMq0cePGYdy4cTUuz83NDYmJifpqHhERETVDBn8UBhEREVFTYwAiIiIis8MARERERGaHAYiIiIjMDgMQERERmR0GICIiIjI7DEBERERkdhiAiIiIyOwwABEREZHZYQAiIiIis8MARERERGaHAYiIiIjMDgMQERERmR0GICIiIjI7DEBERERkdhiAiIiIyOwwABEREZHZYQAiIiIis8MARERERGaHAYiIiIjMDgMQERERmR0GICIiIjI7DEBERERkdhiAiIiIyOwwABEREZHZYQAiIiIis8MARERERGanXgHoypUr+m4HERERUZOpVwDq2LEjhgwZgk8//RSlpaX6bhMRERFRo7KsT6VTp04hMTER0dHRiIqKQkhICCIjI+Hn56fv9hER6V1eXh4KCgrqVdfe3h4uLi56bhERNbV6BSBfX1+sW7cOa9aswddff42kpCQMHDgQnTp1wpQpUzBp0iT+BUFERikvLw+hoS8hP7+sXvWdnGRITt7Iv+OITFy9ApC6sqUlxowZg5EjR+KDDz5AbGws5s+fj4ULF2L8+PF455134O7urq+2EhE1WEFBAfLzyyCTvQJra0+d6paUXEN+/hoUFBQwABGZuAYFoBMnTmDz5s1ISUmBra0t5s+fj8jISPz555+Ii4vD6NGjcfz4cX21lYhIb6ytPWFr20HnemX1O3BEREamXgFo7dq1SExMxPnz5zFixAhs2bIFI0aMgIVFxZhqb29vJCUlwcvLS59tJSIiItKLegWgjRs3YsqUKQgPD6/xFFerVq3w3//+t0GNIyIiImoM9QpAqampaNu2rfqITyVBEHDt2jW0bdsWUqkUYWFhemkkERERkT7V6z5AHTp0wK1bt6pM//vvv+Ht7d3gRhERERE1pnoFIEEQqp1eWFgIKyurBjWIiIiIqLHpdAosOjoaACASibBkyRLY2Nio5ymVShw7dgy+vr56bSARERGRvukUgE6fPg2g4gjQr7/+CqlUqp4nlUrRs2dPzJ8/X78tJCKjxrsqE5Ep0ikAHTx4EAAQERGBdevWwd7evlEaRUSmgXdVJiJTVa+rwBITE/XdDiIyQbyrMhGZKq0D0JgxY5CUlAR7e3uMGTOm1rI7d+5s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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制混合数据的直方图\n",
    "plt.hist(mixed_data, bins=30, density=True, edgecolor='black',\n",
    "         alpha=0.7, color='blue', label='Mixed data')\n",
    "plt.axvline(mean_loc, color='red', label='Mean')\n",
    "plt.axvline(mean_loc + std_loc,\n",
    "            color='pink', label='Mean ± std')\n",
    "plt.axvline(mean_loc - std_loc, color='pink')\n",
    "plt.xlabel('Value')\n",
    "plt.ylabel('Density')\n",
    "plt.legend()\n",
    "plt.title('Histogram of Mixed Data')\n",
    "plt.grid(True)\n",
    "plt.show()"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "start_time": "2024-07-02T22:06:35.114877Z",
     "end_time": "2024-07-02T22:06:35.300014Z"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "outputs": [],
   "source": [],
   "metadata": {
    "collapsed": false
   }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
